#ifndef UI_H_INCLUDED
#define UI_H_INCLUDED

#include <vector>

#include "words.h"
#include "conversation.h"

class UIBase {
public:
    virtual void DrawMan(int state) = 0;
    virtual void ReloadWords(std::vector<Word> &words) = 0;
    virtual char AskLetter() = 0;
    virtual void SetPanelWidth(int length) = 0;
    virtual void SetWordBuffer(char *buf) = 0;
    virtual void* Dialog(std::vector<Segment> &convs, int type) = 0;
    virtual void RenderWordPanel() = 0;
    virtual int MainMenu() = 0;
    virtual void OnExit() = 0;
    virtual void OnStart() = 0;
};

/* ___ */
/* for porting, if you want to use the console UI,
   write '#include "console_ui.h"' on below. */

#include "console_ui.h"

/* ___ */


#endif // UI_H_INCLUDED
